package com.class05.mapper;

import com.class05.pojo.Employee;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @ClassDescription: 规定数据库方法即可
 * @JdkVersion: 17
 * @Author: yxy
 * @Created: 2023/11/10 16:36
 */
public interface EmployeeMapper {
    //    根据id查询员工信息
    Employee queryById(Integer id);

    //    根据员工姓名和工资查询员工信息
    List<Employee> query(@Param("name") String name,
                         @Param("salary") Double salary);

    //    根据员工姓名和工资查询员工信息
    List<Employee> queryTrim(@Param("name") String name,
                             @Param("salary") Double salary);

    //    根据员工id更新员工数据，我们要求传入的name和salary不为空才更新
    int update(Employee employee);


    //    根据员工id更新员工数据，我们要求传入的name和salary不为空才更新
    int updateTrim(Employee employee);

    //    根据id进行批量查询
    List<Employee> queryBetch(@Param("ids") List<Integer> ids);

    //    根据id进行批量删除
    int deleteBetch(@Param("ids") List<Integer> ids);

    //    进行批量插入
    int insertBetch(@Param("list") List<Employee> employeeList);

    //    根据员工姓名和工资查询员工信息
    List<Employee> queryChooseAndWhen(@Param("name") String name,
                             @Param("salary") Double salary);
}
